Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

208
Visualizações
"El objeto posiblemente no está definido" cuando se usa Object.keys()

Tengo un problema con este fragmento de código y le aseguro a TypeScript que sé que la ubicación no estará indefinida (¿ya que estoy iterando a las Personas?).

En cada línea dentro de PeopleCard que Object is possibly 'undefined'.

Estoy un poco confundido como si el Objeto estuviera siendo iterado, asumo que no puede iterar

 {people && Object.keys(people).map((id: string) => ( <PeopleCard location={people[id]} onDelete={() => openDeletePeopleModal(locations[id])} onEdit={() => openEditPeopleDrawer(locations[id])} onClick={() => history.push(`/todo/${todo.id}/people/${people[id].id}`)} /> ))}

Obtengo people de mi Contexto y accedo a él así:

 let { people } = selectedTodo;

TypeScript cree que selectedTodo es del tipo ITodo y que las people son del tipo { [id: string]: Location } | undefined Lo cual me parece correcto.

Mis tipos son así:

 export type People = { id: string; peopleName: string; address1: string; address2?: string; address3?: string; address4?: string; address5?: string; town: string; postcode: string; country: string; } export type ITodo = { id: string; todoName: string; todoType: string; people?: { [id: string]: People }; };

Pensé que agregar otro cheque para indefinido podría sellar el trato, pero todo lo que he intentado hasta ahora no ha funcionado. ¡Solo puedo agregar ! después de cada uno, pero prefiero no hacerlo si es fácil de arreglar.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda